package hotel.compare.oversea.mapper.meituan;


import hotel.base.oversea.dto.meituan.MtHotelDetailDto;
import hotel.base.oversea.repository.MyMapper;
import hotel.compare.oversea.entity.meituan.MtHotelDetail;
import org.apache.ibatis.annotations.Param;

import java.util.List;


/**
*@Description:  美团母酒店信息表
*@Author: Zhang·jz
*@date: 2020/6/29
*/
public interface MtHotelDetailMapper extends MyMapper<MtHotelDetail> {

    /**
     * 根据美团母酒店id,将校验成功的数据转移至mt_hotel_detail_compare表
     * @param mtHotelId 携程母酒店id
     * @return
     */
    Integer insertCompareByMtHotelId(@Param("mtHotelId") String mtHotelId);

    /**
     * 根据美团母酒店id,将校验不成功的数据转移至mt_hotel_detail_no_compare表
     * @param mtHotelId 携程母酒店id
     * @return
     */
    Integer insertNoCompareByMtHotelId(@Param("mtHotelId") String mtHotelId);

    /**
     * 校验不通过 酒店名称不匹配，将美团数据转移至 mt_hotel_detail_no_match_name 表中
     * @param mtHotelId 携程母酒店id
     * @return
     */
    Integer insertNoMatchNameByMtHotelId(@Param("mtHotelId") String mtHotelId);

    /**
     * 根据美团母酒店id删除数据
     * @param mtHotelId 美团母酒店id
     * @return
     */
    Integer deleteMtHotelInfoByMtHotelId(@Param("mtHotelId") String mtHotelId);

    ///////////////////////////////////////////////////////////////////////////////////////////


    /**
     * 根据美团母酒店id,将校验成功的数据转移至mt_hotel_detail_compare表
     * @param list 美团id
     * @return
     */
    Integer insertBatchCompareByIds(@Param("list") List list);

    /**
     * 根据美团母酒店id,将校验不成功的数据转移至mt_hotel_detail_no_compare表
     * @param list 美团id
     * @return
     */
    Integer insertBatchNoCompareByMtIds(@Param("list") List list);

    /**
     * 校验不通过 酒店名称不匹配，将美团数据转移至 mt_hotel_detail_no_match_name 表中
     * @param list 美团id
     * @return
     */
    Integer insertBatchNoMatchNameByMtIds(@Param("list") List list);

    /**
     * 根据美团母酒店id删除数据
     * @param list 美团id
     * @return
     */
    Integer deleteBatchMtHotelInfoByMtIds(@Param("list") List list);

    /**
     * 查询所有数据
     * @return
     */
    List<MtHotelDetail> findAll();


    /**
     * 查询所有数据
     * @return
     */
    List<MtHotelDetailDto> findAllDto();


    /**
     * 获取未校验的美团酒店
     * @return
     */
    List<MtHotelDetail> findMeituanHotelCompare();

    /**
     * <H1>根据Id获取美团详细信息</H1>
     *
     * @param mtHotelId    参数
     * @return hotel.base.oversea.dto.meituan.MtHotelDetailDto
     * @author HuangT
     * @Date 2020/8/17 16:09
    */
    MtHotelDetail getHotelInfoByMtHotelId(String mtHotelId);
}
